1. Field of the Invention
The present invention relates generally to data transfer and, more particularly, to systems and methods for performing flexible queue and stream mapping.
2. Description of Related Art
Conventional network devices, such as routers, transfer streams of data through a network from a source to a destination. Typically, the network devices include one or more memory subsystems to temporarily buffer data while the network devices perform network-related functions, such as route processing or accounting.
A data stream may be considered a pipe of data packets belonging to a communication between a particular source and a particular destination. A network device may assign a variable number of queues (e.g., where a queue may be considered a logical first-in, first-out (FIFO) buffer) to a data stream. For a stream with n queues, the relationship of queues and streams may be represented by:
      stream    bandwidth    =            ∑      0              n        -        1              ⁢                  ⁢                  queue        bandwidth            .      
A problem arises in conventional network devices because a large number of queues need to be flexibly assigned to a large number of streams. When a stream number is supplied, it is necessary to identify all of the queues associated with it. Similarly, when a queue number is supplied, it is necessary to identify the stream to which it is associated. As the number of streams and queues increases, it becomes difficult to quickly determine correspondence between streams and queues.
Therefore, there exists a need for systems and methods that provide queue-to-stream and stream-to-queue mapping in an efficient, cost-effective manner.